﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Configuration;
using System.Xml.Linq;
using FatusoAction.Model;

namespace FatusoAction
{
    public class EbookAction
    {
        public static void CriarEbook(string caminhoTemplate)
        {
            XElement xml = XElement.Load(caminhoTemplate);
            List<XElement> elements = xml.Elements("Template").ToList();
            List<EbookTemplateItem> templateItems = RecuperaInformacoes(elements);

        }

        public static List<EbookTemplateItem> RecuperaInformacoes(List<XElement> elements)
        {
            List<EbookTemplateItem> retorno = new List<EbookTemplateItem>();
            foreach (XElement element in elements)
            {
                string nome = "";
                string conteudo = "";
                List<EbookTemplateItem> subItens = new List<EbookTemplateItem>();

                //NOME
                if (element.Element("Nome") == null)
                {
                    //LOG ERRO   throw new Exception("Template sem elemento NOME.");
                    Console.WriteLine("Template sem elemento NOME.");
                    continue;
                }
                nome = element.Element("Nome").Value.ToString().Trim();

                //CONTEUDO
                if (element.Element("Conteudo") != null)
                    conteudo = element.Element("Conteudo").Value.ToString().Trim();

                //SUBITENS
                List<XElement> subElements = element.Elements("Template").ToList();
                if (subElements.Count > 0)
                    subItens = RecuperaInformacoes(subElements);

                EbookTemplateItem templateItem = new EbookTemplateItem();
                templateItem.Titulo = nome;
                templateItem.Conteudo = conteudo;
                templateItem.Items = subItens;
                retorno.Add(templateItem);
            }
            return retorno;
        }
    }
}
